package com.quartet.modules.vehicle.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 车辆摘要信息表(TVehicleInfo)表实体类
 *
 * @author makejava
 * @since 2021-05-04 17:26:12
 */
@Data
public class TVehicleInfoAddRequestDto implements Serializable {
    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private Integer id;
    /**
     * 车辆编码
     */
    @ApiModelProperty(value = "车辆编码")
    private String vehicleCode;
    /**
     * 设备编码
     */
    @ApiModelProperty(value = "设备编码")
    private String equipmentCode;
    /**
     * 所属客户
     */
    @ApiModelProperty(value = "所属客户")
    private String customerCode;
    /**
     * 流量卡号
     */
    @ApiModelProperty(value = "流量卡号")
    private String flowCardNumber;
    /**
     * 车辆颜色
     */
    @ApiModelProperty(value = "车辆颜色")
    private String carColor;
    /**
     * 生产厂家
     */
    @ApiModelProperty(value = "生产厂家")
    private String manufacturer;
    /**
     * 设备型号
     */
    @ApiModelProperty(value = "设备型号")
    private String equipmentModel;
    /**
     * 车架号
     */
    @ApiModelProperty(value = "车架号")
    private String frameNumber;
    /**
     * 登录密码
     */
    @ApiModelProperty(value = "登录密码")
    private String loginPassword;
    /**
     * 终端ID
     */
    @ApiModelProperty(value = "终端ID")
    private String terminalId;
    /**
     * 定位模式 1：单点定位 2：网格定位 3：差分定位
     */
    @ApiModelProperty(value = "定位模式 1：单点定位 2：网格定位 3：差分定位")
    private Integer positioningMode;
    /**
     * 状态 1：正常 2：停用 3：注销
     */
    @ApiModelProperty(value = "状态 1：正常 2：停用 3：注销")
    private Integer status;
    /**
     * 车牌颜色
     */
    @ApiModelProperty(value = "车牌颜色")
    private String licensePlateColor;
    /**
     * 设备图标
     */
    @ApiModelProperty(value = "设备图标")
    private Integer equipmentIcon;
    /**
     * 协议类型
     */
    @ApiModelProperty(value = "协议类型")
    private Integer agreementType;
    /**
     * 设备IMEI号
     */
    @ApiModelProperty(value = "设备IMEI号")
    private String equipmentImeiNumber;
    /**
     * 自编号
     */
    @ApiModelProperty(value = "自编号")
    private String selfNumber;
    /**
     * 发动机号
     */
    @ApiModelProperty(value = "发动机号")
    private String engineNumber;
    /**
     * 安装时间
     */
    @ApiModelProperty(value = "安装时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime installationTime;
    /**
     * 通讯模式
     */
    @ApiModelProperty(value = "通讯模式")
    private String communicationMode;
    /**
     * 车辆型号
     */
    @ApiModelProperty(value = "车辆型号")
    private String vehicleModel;
    /**
     * 视频通道
     */
    @ApiModelProperty(value = "视频通道")
    private String videoChannel;
    /**
     * 设备类型 1：有线 2：无线
     */
    @ApiModelProperty(value = "设备类型 1：有线 2：无线")
    private Integer equipmentType;
    /**
     * 车辆类型
     */
    @ApiModelProperty(value = "车辆类型")
    private Integer vehicleType;
    /**
     * 车辆品牌
     */
    @ApiModelProperty(value = "车辆品牌")
    private String vehicleBrand;
    /**
     * 个人用户登录 0：允许 1：不允许
     */
    @ApiModelProperty(value = "个人用户登录 0：允许 1：不允许")
    private Integer personalUserLogin;
    /**
     * 车辆用途
     */
    @ApiModelProperty(value = "车辆用途")
    private String vehicleUse;
    /**
     * 协议版本
     */
    @ApiModelProperty(value = "协议版本")
    private String protocolVersion;
    /**
     * 燃油类型 1：汽油 2：柴油 3：电 4：混合类型
     */
    @ApiModelProperty(value = "燃油类型 1：汽油 2：柴油 3：电 4：混合类型")
    private Integer fuelType;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remarks;
    /**
     * 备注2
     */
    @ApiModelProperty(value = "备注2")
    private String remarks2;
}
